﻿@* Ui层项目 - npm配置文件 *@
@using Util.Generators.Helpers
@model Util.Generators.Contexts.EntityContext
@{
    var service = new GenerateService( Model );
    var name = service.GetClientAppName();
    Model.Output.FileNameNoExtension = "package";
    Model.Output.Extension = ".json";
    Model.Output.RelativeRootPath = service.GetClientRootPath();
}
{
  "name": "@name",
  "version": "1.0.0",
  "scripts": {
    "ng": "ng",
    "start": "yarn && ng serve",
    "build": "npm run ng-high-memory build",
    "watch": "ng build --watch --configuration development",
    "test": "ng test",
    "ng-high-memory": "node --max_old_space_size=8000 ./node_modules/@@angular/cli/bin/ng",
    "analyze": "npm run ng-high-memory build -- --source-map && source-map-explorer dist/**/*.js",
    "test-coverage": "ng test --code-coverage --watch=false",
    "color-less": "ng-alain-plugin-theme -t=colorLess",
    "theme": "ng-alain-plugin-theme -t=themeCss",
    "icon": "ng g ng-alain:plugin icon",
    "lint": "npm run lint:ts && npm run lint:style",
    "lint:ts": "ng lint --fix",
    "lint:style": "npx stylelint \"src/**/*.less\" --fix"
  },
  "private": true,
  "dependencies": {
    "@@angular/animations": "^17.3.5",
    "@@angular/common": "^17.3.5",
    "@@angular/compiler": "^17.3.5",
    "@@angular/core": "^17.3.5",
    "@@angular/forms": "^17.3.5",
    "@@angular/platform-browser": "^17.3.5",
    "@@angular/platform-browser-dynamic": "^17.3.5",
    "@@angular/router": "^17.3.5",
    "@@angular/cdk": "^17.3.5",
    "rxjs": "~7.8.1",
    "tslib": "^2.6.2",
    "zone.js": "~0.14.3",
    "ng-zorro-antd": "^17.4.1",
    "@@delon/abc": "^17.3.1",
    "@@delon/acl": "^17.3.1",
    "@@delon/auth": "^17.3.1",
    "@@delon/cache": "^17.3.1",
    "@@delon/chart": "^17.3.1",
    "@@delon/form": "^17.3.1",
    "@@delon/mock": "^17.3.1",
    "@@delon/theme": "^17.3.1",
    "@@delon/util": "^17.3.1",
    "ngx-tinymce": "^17.0.0",
    "tinymce": "~6.8.2",
    "screenfull": "^6.0.2",
    "angular-oauth2-oidc": "~17.0.2",
    @if(service.IsMicrofrontend()) {
    @:"@@angular-architects/module-federation": "~17.0.8",
    }
    "lodash-es": "~4.17.21",
    "date-fns": "~2.30.0",
    "ng-event-bus": "~6.0.0",
    "uuid": "^9.0.1",
    "util-angular": "^17.4.5"
  },
  "devDependencies": {
    "@@angular-devkit/build-angular": "^17.3.5",
    "@@angular/cli": "^17.3.5",
    "@@angular/compiler-cli": "^17.3.5",
    "@@types/jasmine": "~5.1.0",
    "@@types/uuid": "^9.0.1",
    "@@types/node":"^20.12.7",
    "jasmine-core": "~5.1.0",
    "karma": "~6.4.0",
    "karma-chrome-launcher": "~3.2.0",
    "karma-coverage": "~2.2.0",
    "karma-jasmine": "~5.1.0",
    "karma-jasmine-html-reporter": "~2.1.0",
    "typescript": "~5.3.2",
    "@@angular-eslint/builder": "^17.2.0",
    "@@angular-eslint/eslint-plugin": "^17.2.0",
    "@@angular-eslint/eslint-plugin-template": "^17.2.0",
    "@@angular-eslint/schematics": "^17.2.0",
    "@@angular-eslint/template-parser": "^17.2.0",
    "@@typescript-eslint/eslint-plugin": "^7.0.0",
    "@@typescript-eslint/parser": "^7.0.0",
    "eslint": "^8.57.0",
    "eslint-config-prettier": "~9.1.0",
    "eslint-plugin-import": "~2.29.1",
    "eslint-plugin-jsdoc": "~48.0.6",
    "eslint-plugin-prefer-arrow": "~1.2.3",
    "eslint-plugin-prettier": "~5.1.3",
    "eslint-plugin-deprecation": "~2.0.0",
    "@@angular/language-service": "^17.2.0",
    "source-map-explorer": "^2.5.3",
    "prettier": "^3.2.5",
    "stylelint": "^16.2.1",
    "stylelint-config-standard": "^36.0.0",
    "stylelint-declaration-block-no-ignored-properties": "^2.8.0",
    "stylelint-config-clean-order": "^5.4.1",
    "@@delon/testing": "^17.3.1",
    "ng-alain": "^17.3.1",
    "ng-less-javascript-enabled-patch": "17.0.2",
    "@@types/jasminewd2": "~2.0.13",
    "jasmine-spec-reporter": "^7.0.0",
    "protractor": "~7.0.0",
    "ts-node": "~10.9.2",
    @if ( service.IsMicrofrontend() ) {
    @:"ngx-build-plus": "~17.0.0"
    }
    "lint-staged": "^15.2.2",
    "ansi-colors":"^4.1.3"
  },
  "lint-staged": {
    "(src)/**/*.{html,ts}": [
      "eslint --fix"
    ],
    "(src)/**/*.less": [
      "npm run lint:style"
    ]
  }
}